package com.chenp.demo.leetcode.editor.cn;

//给定一个字符串 s ，找到 它的第一个不重复的字符，并返回它的索引 。如果不存在，则返回 -1 。 
//
// 
//
// 示例 1： 
//
// 
//输入: s = "leetcode"
//输出: 0
// 
//
// 示例 2: 
//
// 
//输入: s = "loveleetcode"
//输出: 2
// 
//
// 示例 3: 
//
// 
//输入: s = "aabb"
//输出: -1
// 
//
// 
//
// 提示: 
//
// 
// 1 <= s.length <= 10⁵ 
// s 只包含小写字母 
// 
//
// Related Topics 队列 哈希表 字符串 计数 👍 631 👎 0

import java.util.HashMap;

class FirstUniqueCharacterInAString{
    public static void main(String[] args) {
    	
        Solution solution = new FirstUniqueCharacterInAString().new Solution();
        
    }

//leetcode submit region begin(Prohibit modification and deletion)
class Solution {
    public int firstUniqChar(String s) {
        /*遍历数组
        *   第一次统计词频
        * 第二次 遍历取字符判断
        * */
        HashMap<Character,Integer> map = new HashMap();
        for (int i=0;i<s.length();i++){
           map.put(s.charAt(i),map.getOrDefault(s.charAt(i),0)+1);

        }
        System.out.println(map);
        for (int i = 0; i < s.length(); i++) {
            char c=s.charAt(i);
            if(map.get(c)==1){
                return i;
            }

        }
        return -1;

    }
}
//leetcode submit region end(Prohibit modification and deletion)

}
